Руководство по работе с ошибками обработки кода
Некоторые ошибки (например ошибки синтаксиса или иерархии) могут привести к тому, что САПР не сможет построить схему или запустить симуляцию.
Без должного опыта, при подобных ошибках можно растеряться, т.к. всплывающие окна, сообщающие об этих ошибках малоинформативны (см. рис. 1-2).
Предположим, мы забыли поставить точку с запятой в конце одного из присваиваний, и попробовали запустить моделирование.
В результате, всплывающие окна, представленные на рис. 1-2.
Рисунок 1. Первое всплывающее окно при попытке запустить моделирование проекта с синтаксической ошибкой.
Рисунок 2. Второе всплывающее окно при попытке запустить моделирование проекта с синтаксической ошибкой.
Во втором окне есть кнопка Open Messages View
. Нажмём её. Будет активировано окно сообщений, представленное на рис. 3.
Рисунок 3. Окно сообщений после неудачной попытки запуска симуляции.
Сообщения из раздела Vivado commands
на рис. 2 дают мало информации. Однако здесь же есть критические предупреждения о синтаксической ошибке с возможностью перейти к строчке в файле, вызвавшей это предупреждение. Разумеется, не всегда САПР может сообщить доступным языком в чем именно ошибка, в данном случае, он просто обнаружил что ключевое слово end
встретилось не там, где оно должно было бы быть (оно встретилось до завершения оператора присваивания, который должен был быть завершен символом ;
). В этом случае, вам необходимо самим разобраться в чем именно заключается ошибка (для этого вы можете кликнуть по гиперссылке в критическом предупреждении — откроется редактор с местом ошибки).
Помните, что большая часть сообщений в данном окне сохраняется даже если ошибка будет исправлена, поэтому рекомендуется очищать окно сообщений, в случае если появились ошибки и уже сложно понять какие из них старые, а какие из них новые. Сделать это можно, нажав на иконку корзины в окне сообщений. При этом удалятся не все ошибки, а только те, которые были вызваны процессами, запущенными пользователем. К примеру, если очистить окно сообщений, не исправив указанную ошибку, пропадут только ошибки из раздела Vivado commands
. Дело в том, что критические предупреждения появились не после того, как мы попытались запустить моделирования, а после того, как Vivado автоматически запустил инструменты анализа кода. Делает он это автоматически каждый раз, когда сохраняется файл. Эти ошибки пропадут только когда повторный анализ покажет, что они были исправлены.